package com.dyj.tiktok.enums;

import lombok.AllArgsConstructor;
import lombok.Getter;

import java.util.Objects;

/**
 * 发布状态 枚举
 */
@Getter
@AllArgsConstructor
public enum PostStatusEnum {

    /**
     * 仅适用于FILE_UPLOAD。表示上传正在进行中
     */
    PROCESSING_UPLOAD("PROCESSING_UPLOAD"),

    /**
     * 仅适用于PULL_FROM_URL。表示正在从 URL 下载。
     */
    PROCESSING_DOWNLOAD("PROCESSING_DOWNLOAD"),

    /**
     * 仅当您选择上传内容时可用。表示已向创作者的收件箱发送通知，以使用 TikTok 的编辑流程完成草稿帖子。
     */
    SEND_TO_USER_INBOX("SEND_TO_USER_INBOX"),

    /**
     * 对于直接发布，表示内容已发布。对于上传内容，表示用户已点击收件箱通知，并已使用TikTok编辑流程成功发布媒体。
     */
    PUBLISH_COMPLETE("PUBLISH_COMPLETE"),

    /**
     * 表示发生了错误，整个过程失败。
     */
    FAILED("FAILED");

    /**
     * 状态值
     */
    private final String code;

    public static Boolean isFailed(String code) {
        return Objects.equals(FAILED.getCode(), code);
    }

}
